package com.proyemp.entity.classes;

import java.io.Serializable;
import java.util.Date;
import java.util.Set;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;


/**
 * The persistent class for the beneficios database table.
 * 
 */
@Entity
@Table(name="beneficios")
public class Beneficio implements Serializable {
	private static final long serialVersionUID = 1L;

	@Id
	@GeneratedValue(strategy=GenerationType.AUTO)
	@Column(name="id_beneficio")
	private Integer idBeneficio;

	private String descripcion;

    @Temporal( TemporalType.DATE)
	@Column(name="fecha_actualizacion")
	private Date fechaActualizacion;

	@Column(name="usuario_modificacion")
	private String usuarioModificacion;

	//bi-directional many-to-one association to TiposBeneficio
    @ManyToOne
	@JoinColumn(name="id_tipo_beneficio")
	private TiposBeneficio tiposBeneficio;

	//bi-directional many-to-one association to BeneficiosAlianza
	@OneToMany(mappedBy="beneficio")
	private Set<BeneficiosAlianza> beneficiosAlianzas;

	//bi-directional many-to-one association to BeneficiosPrograma
	@OneToMany(mappedBy="beneficio")
	private Set<BeneficiosPrograma> beneficiosProgramas;

	//bi-directional many-to-one association to UsosBeneficiosUsuarioPrograma
	@OneToMany(mappedBy="beneficio")
	private Set<UsosBeneficiosUsuarioPrograma> usosBeneficiosUsuarioProgramas;

    public Beneficio() {
    }

	public Integer getIdBeneficio() {
		return this.idBeneficio;
	}

	public void setIdBeneficio(Integer idBeneficio) {
		this.idBeneficio = idBeneficio;
	}

	public String getDescripcion() {
		return this.descripcion;
	}

	public void setDescripcion(String descripcion) {
		this.descripcion = descripcion;
	}

	public Date getFechaActualizacion() {
		return this.fechaActualizacion;
	}

	public void setFechaActualizacion(Date fechaActualizacion) {
		this.fechaActualizacion = fechaActualizacion;
	}

	public String getUsuarioModificacion() {
		return this.usuarioModificacion;
	}

	public void setUsuarioModificacion(String usuarioModificacion) {
		this.usuarioModificacion = usuarioModificacion;
	}

	public TiposBeneficio getTiposBeneficio() {
		return this.tiposBeneficio;
	}

	public void setTiposBeneficio(TiposBeneficio tiposBeneficio) {
		this.tiposBeneficio = tiposBeneficio;
	}
	
	public Set<BeneficiosAlianza> getBeneficiosAlianzas() {
		return this.beneficiosAlianzas;
	}

	public void setBeneficiosAlianzas(Set<BeneficiosAlianza> beneficiosAlianzas) {
		this.beneficiosAlianzas = beneficiosAlianzas;
	}
	
	public Set<BeneficiosPrograma> getBeneficiosProgramas() {
		return this.beneficiosProgramas;
	}

	public void setBeneficiosProgramas(Set<BeneficiosPrograma> beneficiosProgramas) {
		this.beneficiosProgramas = beneficiosProgramas;
	}
	
	public Set<UsosBeneficiosUsuarioPrograma> getUsosBeneficiosUsuarioProgramas() {
		return this.usosBeneficiosUsuarioProgramas;
	}

	public void setUsosBeneficiosUsuarioProgramas(Set<UsosBeneficiosUsuarioPrograma> usosBeneficiosUsuarioProgramas) {
		this.usosBeneficiosUsuarioProgramas = usosBeneficiosUsuarioProgramas;
	}
	
}